
/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

京东云jcq接口
jcq相关接口

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

#import <Foundation/Foundation.h>

#import <JDCloudOCSDKJcq/JcqExecutor.h>


/// 死信队列列表
@implementation  JcqListDeadLettersExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}:listDeadLetters";
    return self;
}
@end

/// 死信消息数(按照用户或者consumerGroupId)
@implementation  JcqDescribeDeadLetterNumbersExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/deadLetterNumbers";
    return self;
}
@end

/// 清除消息
@implementation  JcqCleanMessagesExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"POST";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}:cleanMessages";
    return self;
}
@end

/// 删除单个topic
@implementation  JcqDeleteTopicExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"DELETE";
    self.url = @"/regions/{regionId}/topics/{topicName}";
    return self;
}
@end

/// 重发死信消息
@implementation  JcqResendDeadLettersExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"POST";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}:resendDeadLetters";
    return self;
}
@end

/// 查看接入点接口
@implementation  JcqDescribeAccessPointExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/accessPoints";
    return self;
}
@end

/// 查询topic列表
@implementation  JcqDescribeTopicsExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics";
    return self;
}
@end

/// 删除当前topic对目标用户授权的权限
@implementation  JcqRemovePermissionExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"DELETE";
    self.url = @"/regions/{regionId}/topics/{topicName}/iam";
    return self;
}
@end

/// 重置消费位
@implementation  JcqResetConsumeOffsetExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"POST";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}:resetConsumeOffset";
    return self;
}
@end

/// 删除死信消息
@implementation  JcqDeleteDeadLettersExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"DELETE";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}:deleteDeadLetters";
    return self;
}
@end

/// 创建一个指定名称的topic
@implementation  JcqCreateTopicExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"POST";
    self.url = @"/regions/{regionId}/topics";
    return self;
}
@end

/// 创建订阅
@implementation  JcqCreateSubscriptionExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"POST";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions";
    return self;
}
@end

/// 查询消息轨迹
@implementation  JcqDescribeMessageTraceExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/messageTrace/{messageId}";
    return self;
}
@end

/// consumerGroupId列表
@implementation  JcqDescribeConsumerGroupIdsExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/consumerGroupIds";
    return self;
}
@end

/// 修改订阅
@implementation  JcqModifySubscriptionAttributeExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"PATCH";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}";
    return self;
}
@end

/// 查询订阅详情
@implementation  JcqDescribeSubscriptionExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}";
    return self;
}
@end

/// 对当前topic授予目标用户特定权限
@implementation  JcqAddPermissionExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"POST";
    self.url = @"/regions/{regionId}/topics/{topicName}/iam";
    return self;
}
@end

/// 查询topic详情
@implementation  JcqDescribeTopicExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}";
    return self;
}
@end

/// 消息列表
@implementation  JcqDescribeMessagesExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/messages";
    return self;
}
@end

/// 订阅列表
@implementation  JcqDescribeSubscriptionsExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions";
    return self;
}
@end

/// 查询message详情
@implementation  JcqDescribeMessageExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/messages/{messageId}";
    return self;
}
@end

/// 根据businessId查询消息
@implementation  JcqDescribeMessagesByBusinessIdExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"POST";
    self.url = @"/regions/{regionId}/topics/{topicName}/messagesWithBusinessId";
    return self;
}
@end

/// 查看当前topic授予了哪些用户哪些权限
@implementation  JcqDescribePermissionExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/iam";
    return self;
}
@end

/// 死信消息数
@implementation  JcqDescribeDeadLetterNumbersWithTopicExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"GET";
    self.url = @"/regions/{regionId}/topics/{topicName}/deadLetterNumbers";
    return self;
}
@end

/// 删除订阅
@implementation  JcqDeleteSubscriptionExecutor

-(id) initWithJDCloudClient:(JcqClient*)JDCloudClient
{
    self.jdCloudClient = JDCloudClient;
    self.method = @"DELETE";
    self.url = @"/regions/{regionId}/topics/{topicName}/subscriptions/{consumerGroupId}";
    return self;
}
@end
